package com.xinhe.cn.cpbox.entity.dto;

import lombok.Data;

import java.math.BigDecimal;

/**
 * @author HB
 * @date 2021/10/12 18:02
 */
@Data
public class CountPayDto {
    public static final BigDecimal fifty = new BigDecimal(0.50); // 直属用户产生百分之50收益
    public static final BigDecimal ten = new BigDecimal(0.10); // 下级月老用户产生百分之10收益
    public static final BigDecimal five = new BigDecimal(0.05); // 下下级月老用户产生百分之5收益
    public static final BigDecimal one = new BigDecimal(0.01); // 转换单位分为单位元
    public static final BigDecimal zero = new BigDecimal(0.00); // 0，用于比较

    public BigDecimal linkMoney;   // 直属用户产生的收入
    public BigDecimal chileMoney;  // 下级月老的用户产生的收入
    public BigDecimal grandchildMoney; // 下下级月老的用户产生的收入
    public String openId;  // 月老的openId

    public CountPayDto() {
        linkMoney = new BigDecimal(0.00);   // 直属用户产生的收入
        chileMoney = new BigDecimal(0.00);  // 下级月老的用户产生的收入
        grandchildMoney = new BigDecimal(0.00); // 下下级月老的用户产生的收入
    }

    public CountPayDto(String openId) {
        this.openId = openId;
        linkMoney = new BigDecimal(0.00);   // 直属用户产生的收入
        chileMoney = new BigDecimal(0.00);  // 下级月老的用户产生的收入
        grandchildMoney = new BigDecimal(0.00); // 下下级月老的用户产生的收入
    }

    public void addMoney(int type, BigDecimal bigDecimal) {
        switch (type) {
            case 1:
                linkMoney = linkMoney.add(bigDecimal);
                break;
            case 2:
                chileMoney = chileMoney.add(bigDecimal);
                break;
            case 3:
                grandchildMoney = grandchildMoney.add(bigDecimal);
                break;
        }
    }
}